home *** CD-ROM | disk | FTP | other *** search
-
-
-
- iiiiooooccccoooonnnnffffiiiigggg((((1111MMMM)))) iiiiooooccccoooonnnnffffiiiigggg((((1111MMMM))))
-
-
-
- NNNNAAAAMMMMEEEE
- ioconfig - configure I/O devices
-
- SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- iiiiooooccccoooonnnnffffiiiigggg [----dddd] ----ffff starting_directory
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- _i_o_c_o_n_f_i_g assigns logical controller numbers to all devices in the I/O
- subsystem. It is run as a part of the /_e_t_c/_b_c_h_e_c_k_r_c startup script.
- _i_o_c_o_n_f_i_g walks the /_h_w hardware graph tree and assigns a unique and
- persistent logical controller number to each physical device found.
-
- The options are:
-
- ----dddd Enable debugging messages.
-
- ----ffff _s_t_a_r_t_i_n_g__d_i_r_e_c_t_o_r_y
- Specify the root of the hardware graph tree.
-
- _i_o_c_o_n_f_i_g attempts to match each device found as it walks the /_h_w hardware
- graph tree with an entry in /_e_t_c/_i_o_c_o_n_f_i_g._c_o_n_f. For each device found,
- if there is a match, _i_o_c_o_n_f_i_g assigns the logical controller number
- specified for the device in /_e_t_c/_i_o_c_o_n_f_i_g._c_o_n_f to the device. If there
- is no match, _i_o_c_o_n_f_i_g assigns a logical controller number. This logical
- controller number is the next number that is available to devices in that
- class of device. (Device classes include SCSI, tty, and the various
- network devices among others.) The assigned logical controller number
- and the device are added to /_e_t_c/_i_o_c_o_n_f_i_g._c_o_n_f. The format of an entry
- in /_e_t_c/_i_o_c_o_n_f_i_g._c_o_n_f is:
-
- _<<<<_llll_oooo_gggg_iiii_cccc_aaaa_llll _cccc_oooo_nnnn_tttt_rrrr_oooo_llll_llll_eeee_rrrr _nnnn_uuuu_mmmm_bbbb_eeee_rrrr_>>>> _<<<<_cccc_aaaa_nnnn_oooo_nnnn_iiii_cccc_aaaa_llll _nnnn_aaaa_mmmm_eeee _oooo_ffff _tttt_hhhh_eeee _pppp_hhhh_yyyy_ssss_iiii_cccc_aaaa_llll _dddd_eeee_vvvv_iiii_cccc_eeee_>>>>
-
- Some examples are:
-
- 1 /hw/module/2/slot/n1/node/xtalk/0/pci/2/ef
- 3 /hw/module/2/slot/n1/node/xtalk/0/pci/1/scsi_ctlr/0
- 3 /hw/module/2/slot/n1/node/xtalk/0/pci/3/tty/1
-
- In this example a tty controller and a SCSI controller have the same
- logical number. This is possible because they are in different classes.
- Within each class, each physical device has a unique logical controller
- number. These logical controller numbers are not unique across all
- classes.
-
- Because controller numbers, once allocated, are persistent across reboots
- and physical hardware configuration changes, adding a new device or
- removing an existing device does not effect the assigned controller
- number of other devices. Editing or removing /_e_t_c/_i_o_c_o_n_f_i_g._c_o_n_f erases
- controller numbering history and results in a reallocation of controller
- numbers for all devices found.
-
-
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- iiiiooooccccoooonnnnffffiiiigggg((((1111MMMM)))) iiiiooooccccoooonnnnffffiiiigggg((((1111MMMM))))
-
-
-
- _i_o_c_o_n_f_i_g reads permissions from /_e_t_c/_i_o_p_e_r_m_s to set the ownership and
- permissions for I/O devices. This is done after the devices have been
- assigned their logical numbers. Comment lines begin with the character ####
- and the wild card characters **** are allowed in the device names. The
- format of an entry for a device in the permissions file is:
-
- _<<<<_dddd_eeee_vvvv_iiii_cccc_eeee______nnnn_aaaa_mmmm_eeee_>>>> _<<<<_pppp_eeee_rrrr_mmmm_iiii_ssss_ssss_iiii_oooo_nnnn_ssss_>>>> _<<<<_oooo_wwww_nnnn_eeee_rrrr______nnnn_aaaa_mmmm_eeee_>>>> _<<<<_gggg_rrrr_oooo_uuuu_pppp______nnnn_aaaa_mmmm_eeee_>>>>
-
- Some examples are:
-
- /dev/console 0644 root sys
- /dev/input/* 0644 root sys
-
-
- _I_o_c_o_n_f_i_g scans /_v_a_r/_s_y_s_g_e_n/_i_o_c_o_n_f_i_g directory to check for any device
- specific files. Comment lines in these files start with a pound
- character. Format of an entry of these files is:
-
- _<<<<_cccc_llll_aaaa_ssss_ssss_>>>> _<<<<_tttt_yyyy_pppp_eeee_>>>> _<<<<_ssss_tttt_aaaa_tttt_eeee_>>>> _<<<<_gggg_eeee_nnnn_eeee_rrrr_iiii_cccc_>>>> _<<<<_ssss_uuuu_ffff_ffff_iiii_xxxx_>>>> _<<<<_pppp_aaaa_tttt_tttt_eeee_rrrr_nnnn_>>>> _<<<<_ssss_tttt_aaaa_rrrr_tttt______nnnn_uuuu_mmmm_>>>> _<<<<_iiii_oooo_cccc_tttt_llll______nnnn_uuuu_mmmm_>>>>
-
- Some examples are:
-
- #1. Entry for tty device
- #
- # INV_SERIAL INV_IOC3_DMA IGNORE "d" "tty" 2 SIOC_MKHWG
- # ('z' << 8 | 15)
- 4 16 -1 d tty 2 0x7a05
-
-
- #2. Entry for mouse device
- #
- # INV_MISC INV_MISC_PCKM MS IGNORE IGNORE 2 IGNORE
- #
- 14 1 0 -1 -1 2 -1
-
-
- <type> can be -1 if the <class> itself is enough to uniquely
- identify the device
- <state> can be -1 if <class> & <type> uniquely identify the device
- <suffix> can be -1 in which case ioconfig ignores it
- <pattern> can be -1 in which case ioconfig takes the basename of the
- canonical name of the device that it is looking at
- <ioctl> can be -1 in which case ioconfig doesnot make the devicedriver
- specific ioctl
-
-
- For a particular device the more generic entries should appear first in
- the corresponding device file.
-
- Eg:- For a network device consider the entries
- <class> <type> <state>
- <e1> INV_NETWORK IGNORE IGNORE .......
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-
-
-
- iiiiooooccccoooonnnnffffiiiigggg((((1111MMMM)))) iiiiooooccccoooonnnnffffiiiigggg((((1111MMMM))))
-
-
-
- <e2> INV_NETWORK INV_ETHER_EF IGNORE .......
-
-
- Since <e2> is more specific than <e1> in the sense that <type> is also
- specified <e1> MUST appear before <e2> for <e2> to have any effect.
-
- EEEERRRRRRRROOOORRRR MMMMEEEESSSSSSSSAAAAGGGGEEEESSSS
- PPPPeeeerrrrssssiiiisssstttteeeennnntttt ccccttttllllrrrr nnnnuuuummmm ((((####1111)))) ddddiiiiffffffffeeeerrrreeeennnntttt ffffrrrroooommmm hhhhwwwwggggrrrraaaapppphhhh ccccttttllllrrrr nnnnuuuummmm ((((####2222)))) ffffoooorrrr <<<<hhhhwwwwgggg____nnnnaaaammmmeeee>>>>
- The recommended action in this case is to REMOVE the
- line corresponding to <hwg_name> from
- _e_t_c/_i_o_c_o_n_f_i_g._c_o_n_f file.
- FFFFIIIILLLLEEEESSSS
- /etc/ioconfig.conf maps logical controller numbers to canonical device
- names
- /etc/ioperms specifies permissions, owner, and group for devices
- /var/sysgen/ioconfig each device file in this directory specifies the
- ioconfig policy for that device
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- hwgraph(4), basename(1).
-
- NNNNOOOOTTTTEEEE
- If a disk is not properly initialized at the time of running _i_o_c_o_n_f_i_g,
- only /_d_e_v/_r_d_s_k/_d_k_s*{_v_o_l,_v_h} device special files are created for that
- disk. This is because _i_o_c_o_n_f_i_g fails when it opens the volume and finds
- that the volume header is not valid. If this disk is repartitioned using
- _f_x, all the proper partition device special files and aliases in /_d_e_v/_d_s_k
- and /_d_e_v/_r_d_s_k are created for that disk.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 3333
-
-
-
-